Fix tramp security issues (CVE-2014-3424)
authorRob Browning <rlb@defaultvalue.org>
Wed, 14 May 2014 21:46:14 +0000 (16:46 -0500)
committerRob Browning <rlb@defaultvalue.org>
Wed, 14 May 2014 21:46:17 +0000 (16:46 -0500)
Add 0013-Security-issues-in-tramp-have-been-fixed-CVE-2014-34.patch to
incorporate the relevant upstream patch.

Partially-fixes: 748140

1  2 
debian/.git-dpm
debian/patches/0013-Security-issues-in-tramp-have-been-fixed-CVE-2014-34.patch
debian/patches/series

diff --cc debian/.git-dpm
index 2671368f9a390295e2c8b6f1c90550ff60dc1794,0000000000000000000000000000000000000000..769a64a75c1bdce3b200cf1320d73eeeb70a5472
mode 100644,000000..100644
--- /dev/null
@@@ -1,8 -1,0 +1,8 @@@
- ebef68ace092718a1691a7f1dfcb280f39719c5d
- ebef68ace092718a1691a7f1dfcb280f39719c5d
 +# see git-dpm(1) from git-dpm package
++cc30a0ecdb81fe9cf1c7a5ab53293ccfddb450e8
++cc30a0ecdb81fe9cf1c7a5ab53293ccfddb450e8
 +24c1fe67725d87a843919696fdc1ff49c99e7fd4
 +24c1fe67725d87a843919696fdc1ff49c99e7fd4
 +emacs24_24.3+1.orig.tar.bz2
 +421a2aef37aedf8ca24bb57cd100d173022e79a4
 +25725234
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..92af00a91f97241bfcfcdbd0660c823756022749
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,117 @@@
++From cc30a0ecdb81fe9cf1c7a5ab53293ccfddb450e8 Mon Sep 17 00:00:00 2001
++From: Michael Albinus <michael.albinus@gmx.de>
++Date: Tue, 6 May 2014 11:51:05 +0200
++Subject: Security issues in tramp have been fixed (CVE-2014-3424)
++
++Applied upstream patch to fix
++https://security-tracker.debian.org/tracker/CVE-2014-3424
++
++  Fix Bug#17415.
++
++  * net/tramp-sh.el (tramp-uudecode): Replace the hard-coded temporary
++  file name by a format specifier.
++  (tramp-remote-coding-commands): Enhance docstring.
++  (tramp-find-inline-encoding): Replace "%t" by a temporary file name.
++
++Origin: upstream, commit: r117071, b7dc23dbf3e5c1528c909fb453b9db0d0fcaff31
++Added-by: Rob Browning <rlb@defaultvalue.org>
++Bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=748140
++---
++ lisp/ChangeLog       | 17 +++++++++++++++++
++ lisp/net/tramp-sh.el | 35 ++++++++++++++++++++++++++---------
++ 2 files changed, 43 insertions(+), 9 deletions(-)
++
++diff --git a/lisp/ChangeLog b/lisp/ChangeLog
++index 08548e7..b5f5d26 100644
++--- a/lisp/ChangeLog
+++++ b/lisp/ChangeLog
++@@ -1,3 +1,20 @@
+++2014-05-06  Michael Albinus  <michael.albinus@gmx.de>
+++
+++     * net/tramp-sh.el (tramp-remote-process-environment): Remove
+++     HISTFILE and HISTSIZE; it's too late to set them here.  Add
+++     :version entry.
+++     (tramp-open-shell): Do not let-bind `tramp-end-of-output'.  Add
+++     "HISTSIZE=/dev/null" to the shell's env arguments.  Do not send
+++     extra "PSx=..." commands.
+++     (tramp-maybe-open-connection): Setenv HISTFILE to /dev/null.
+++     (Bug#17295)
+++
+++     (tramp-uudecode): Replace the hard-coded temporary file name by a
+++     format specifier.
+++     (tramp-remote-coding-commands): Enhance docstring.
+++     (tramp-find-inline-encoding): Replace "%t" by a temporary file
+++     name.  (Bug#17415)
+++
++ 2014-05-06  Glenn Morris  <rgm@gnu.org>
++ 
++      * emacs-lisp/find-gc.el (find-gc-source-directory): Give it a value.
++diff --git a/lisp/net/tramp-sh.el b/lisp/net/tramp-sh.el
++index 29a6344..4cda37b 100644
++--- a/lisp/net/tramp-sh.el
+++++ b/lisp/net/tramp-sh.el
++@@ -605,9 +605,9 @@ This list is used for copying/renaming with out-of-band methods.
++ See `tramp-actions-before-shell' for more info.")
++ 
++ (defconst tramp-uudecode
++-  "(echo begin 600 /tmp/tramp.$$; tail +2) | uudecode
++-cat /tmp/tramp.$$
++-rm -f /tmp/tramp.$$"
+++  "(echo begin 600 %t; tail -n +2) | uudecode
+++cat %t
+++rm -f %t"
++   "Shell function to implement `uudecode' to standard output.
++ Many systems support `uudecode -o /dev/stdout' or `uudecode -o -'
++ for this or `uudecode -p', but some systems don't, and for them
++@@ -3938,7 +3938,7 @@ Each item is a list that looks like this:
++ 
++ \(FORMAT ENCODING DECODING [TEST]\)
++ 
++-FORMAT is  symbol describing the encoding/decoding format.  It can be
+++FORMAT is a symbol describing the encoding/decoding format.  It can be
++ `b64' for base64 encoding, `uu' for uu encoding, or `pack' for simple packing.
++ 
++ ENCODING and DECODING can be strings, giving commands, or symbols,
++@@ -3948,9 +3948,11 @@ filename will be put into the command line at that spot.  If the
++ specifier is not present, the input should be read from standard
++ input.
++ 
++-If they are variables, this variable is a string containing a Perl
++-implementation for this functionality.  This Perl program will be transferred
++-to the remote host, and it is available as shell function with the same name.
+++If they are variables, this variable is a string containing a
+++Perl or Shell implementation for this functionality.  This
+++program will be transferred to the remote host, and it is
+++available as shell function with the same name.  A \"%t\" format
+++specifier in the variable value denotes a temporary file.
++ 
++ The optional TEST command can be used for further tests, whether
++ ENCODING and DECODING are applicable.")
++@@ -4025,10 +4027,25 @@ Goes through the list `tramp-local-coding-commands' and
++                  (throw 'wont-work-remote nil))
++ 
++                (when (not (stringp rem-dec))
++-                 (let ((name (symbol-name rem-dec)))
+++                 (let ((name (symbol-name rem-dec))
+++                       (value (symbol-value rem-dec))
+++                       tmpfile)
++                    (while (string-match (regexp-quote "-") name)
++                      (setq name (replace-match "_" nil t name)))
++-                   (tramp-maybe-send-script vec (symbol-value rem-dec) name)
+++                   (when (string-match "%t" value)
+++                     (setq tmpfile
+++                           (make-temp-name
+++                            (expand-file-name
+++                             tramp-temp-name-prefix
+++                             (tramp-get-remote-tmpdir vec)))
+++                           value
+++                           (format-spec
+++                            value
+++                            (format-spec-make
+++                             ?t
+++                             (tramp-file-name-handler
+++                              'file-remote-p tmpfile 'localname)))))
+++                   (tramp-maybe-send-script vec value name)
++                    (setq rem-dec name)))
++                (tramp-message
++                 vec 5
index 46048c871775419e4c00e617a89f3a0d3c4156ac,0000000000000000000000000000000000000000..9e34d056f0ccd4041c0106b278ad0fe403082ac5
mode 100644,000000..100644
--- /dev/null
@@@ -1,12 -1,0 +1,13 @@@
 +0001-Prefer-usr-share-info-emacs-24-over-usr-share-info.patch
 +0002-Run-debian-startup-and-set-debian-emacs-flavor.patch
 +0003-Remove-files-that-appear-to-be-incompatible-with-the.patch
 +0004-Adjust-documentation-references-for-Debian.patch
 +0005-Modify-the-output-of-version-to-indicate-Debian-modi.patch
 +0006-Look-for-NEWS-in-order-to-find-etc-rather-than-GNU.patch
 +0007-Invoke-the-correct-xmlstarlet-executable-on-Debian-s.patch
 +0008-Emacs-should-no-longer-hang-at-startup-on-kFreeBSD.patch
 +0009-Emacs-should-no-longer-hang-at-startup-on-kFreeBSD.patch
 +0010-Emacs-should-now-build-correctly-on-GNU-Hurd.patch
 +0011-Gnus-should-no-longer-use-a-predictable-temp-file-na.patch
 +0012-Security-issues-in-find-gc.el-have-been-fixed-CVE-20.patch
++0013-Security-issues-in-tramp-have-been-fixed-CVE-2014-34.patch